export default {
	// 手机号验证
	validatePhoneNumber(phoneNumber) {
		if (!phoneNumber) {
			uni.showToast({
				title: '请输入手机号',
				icon: "none",
				duration: 1000
			});
			return false
		}
		// 定义手机号正则表达式  
		const phoneRegex = /^1[3456789]\d{9}$/;
		// 使用test方法检查手机号是否符合格式  
		if (phoneRegex.test(phoneNumber)) {
			return true;
		} else {
			uni.showToast({
				title: '手机号格式错误',
				icon: "none",
				duration: 1000
			});
			return false
		}
	},
	// 身份证验证 这段代码首先检查输入是否为18位，并且确保前17位都是数字。
	isValidChineseID(id) {
		if (!id || id.length !== 18) {
			return false;
		}

		const weight = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
		const checkCode = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'];
		let sum = 0;

		for (let i = 0; i < 17; i++) {
			const num = Number(id[i]);
			if (isNaN(num)) {
				return false;
			}
			sum += num * weight[i];
		}

		const last = id[17].toUpperCase();
		const index = last === 'X' ? 10 : Number(last);

		return checkCode[sum % 11] === last || index === checkCode[sum % 11];
	},
	// 图片格式-大小验证
	handleBeforeUpload(file) {

		const suffix = file.extname === 'png' || file.extname === 'jpg'
		const isLt1M = file.size / 1024 / 1024 < 5
		if (!suffix) {
			uni.showToast({
				title: '只能上传图片',
				icon: "none",
				duration: 1000
			});
			return false
		}
		if (!isLt1M) {
			uni.showToast({
				title: '上传图片大小不能超过 5MB!',
				icon: "none",
				duration: 1000
			});
			return false
		}
		return true
	}
}